The present invention pertains to computer networks and management thereof.
Currently there are essentially three paradigms for computer network architecture. In a first paradigm, illustrated in FIG. 1A, a network 20A has plural client workstations or desktop systems 22A connected to a pool of servers (e.g., data base server 24A, file server 26A, and printer server 28A) and a router 30A. Typically the desktop systems 22A are connected to the servers and router by an appropriate cabling, e.g., a category 5 unshielded twisted pair 32A. Printer server 28A is connected to one or more printers 36A; router 30A is connected through an appropriate gateway or the like to the Internet 38. The servers and routers are traditionally located in a different location from the desktop systems 22A, e.g., in a data center which may be in a different room, in different part of a building, in a differing building, or even in a different geographical area than the client workstations.
The computer network paradigm of FIG. 1A has been characterized as employing xe2x80x9cfat client technologyxe2x80x9d. Such characterization indicates that resources are provided at desktop systems 22A to perform the operations of executing application programs, maintaining user configurations, and maintaining application program configurations. The measure of xe2x80x9cfatnessxe2x80x9d is how much of an application program actually executes at the ultimate user""s workstation. According to industry analysts, fatness increases the total cost of ownership of the network. In this regard, a significant component of the total cost of ownership is the maintenance required to keep the client workstation running. For example, in order to perform activities such as upgrades and the like, network administrators usually require access to each client workstation. Such access is not necessarily convenient for large networks having desktop systems considerably remote from the administrator""s premises.
A second network paradigm is exemplified by network 20B of FIG. 1B. Network 20B includes plural terminals 23B, known as xe2x80x9cWindows Terminalsxe2x80x9d, which are connected to a multi-user server 24B. The server 24B is connected via router 30B to the Internet 38, and interfaces with printers 36B. Each of the terminals 23B is connected by cabling 32B to server 24B, with cabling 32B again being (for example) a category 5 unshielded twisted pair 32B. Network 20B is an example of xe2x80x9cthin client technologyxe2x80x9d in that the equipment provided at the desk (e.g., a personal computer) does not perform general purpose functions, but instead acts as a terminal to the server. That is, in network 20B, it is the server that that executes applications, maintains user configurations, and maintains application program configurations. Since the server performs these operations, keystrokes and mouse input received at the terminals are transmitted over the network to the server where, e.g., the application program executes. The execution at the server results in screen displays, etc., which are transmitted back over the network to the terminals.
The xe2x80x9cthin clientxe2x80x9d network 20B of FIG. 1B puts a lean but powerful client computer on the desktop, e.g., a computer with relatively high-end processing power and memory, but with limited peripherals and limited user control of the boot process and operating environment. Since the network administrator has direct access to user configurations, etc., the xe2x80x9cthin client technologyxe2x80x9d typified by network 20B of FIG. 1B makes it easier for the network administrator to upgrade, e.g., application programs, and to change user configurations. Moreover, the xe2x80x9cthin client technologyxe2x80x9d lowers the cost of equipment and the cost of maintenance of resources at the desktop.
A third paradigm, known as the xe2x80x9clean client technologyxe2x80x9d, provides an intermediate compromise between the fat client and thin client technologies. An example of a lean client network 20C is illustrated in FIG. 1C as including network personal computers (NetPCs) 22C connected to a pool of application/user configuration servers 24C and router 30C over cabling 32C (e.g., a category 5 unshielded twisted pair 32C). In lean client network 20C, the personal computers (NetPCs) 22C execute the applications programs, but the application/user configuration servers 24C are employed to maintain user configurations and application configurations. The applications programs are maintained at the application/user configuration servers 24C and downloaded as needed to the personal computers (NetPCs) 22C for execution at the personal computers (NetPCs) 22C.
Concerning computers per se, the PCI expansion bus is a current means for adding hardware to a present day personal computer (PC). The PCI expansion bus is typically realized by expansion slots, which are usually mounted on the motherboard of the computer. Current designs use the PCI-bridge technology to support multiple three-slot PCI buses on a system.
It has been known in the prior art to divide a computer into two components, but such division has heretofore occurred at a video card. Nor has the video card-based computer division addressed the networking concerns such as total cost ownership, for example.
Whereas the thin and lean technologies depend upon new applications that run on servers or get downloaded, and it can be difficult to change to these type of applications. What is needed therefore, and an object of the present invention, is a computer which affords centralized management using as much existing software and hardware as possible.
A split computer comprises a main module remotely connected by external PCI bus to a input/output (I/O) or extension module. The main module comprises a processor and an external PCI bus first interface. The input/output (I/O) module comprises one or more input and/or output device controllers and an external PCI bus second interface. The external PCI bus connects the external bus first interface of the main module with the external bus second interface of the input/output (I/O) module. The main module executes application programs, maintains user configurations, and maintains application configurations. Yet since the main module is located remotely, e.g., at a data center, the both security and centralized management are realized using existing hardware and software. The input/output (I/O) module has a relative small footprint and primarily performs input and output operations.